# 第一题:猜数字小游戏
# 随机生成一个 100 以内的整数，共有 10 次机会开始游戏，输入猜测的数字。
# 1.如果猜小了，则提示:猜小了
# 2.如果猜大了，则提示:猜大了
# 3.猜对了，则提示:猜对了，并且结束游戏
# 4.10 次机会用完还没猜对，提示:游戏结束，没有猜到。
# import random

# def GuessNumber():
#     num = random.randint(1, 100)
#     attempts = 10

#     for attempt in range(attempts):
#         guess = int(input("请输入你猜的数字："))
#         if guess < num:
#             print("猜小了")
#         elif guess > num:
#             print("猜大了")
#         else:
#             print("猜对了，游戏结束")
#             break
#     else:
#         print("10次机会用完，游戏结束，没猜到。")
# GuessNumber()


# 第二题:剪刀石头布
# 1.游戏开始，初始状态下用户和电脑都有 100 分，赢一局+10 分，输一局-10 分。2:当用户为 0分时，游戏结束，提示游戏结束，比赛输了
# 3.当用户为 200 分时，游戏结束，提示游戏结束，赢得比赛、每轮比赛都输出当前的分数
# 4.1 代表剪刀 2 代表石头 3 代表布
import random
# 电脑分数
computerMark = 100
# 用户分数
userMark = 100
while 0 < userMark < 200:
    computer = random.randint(1, 3)
    user = int(input("1 代表剪刀, 2 代表石头, 3 代表布 请输入:"))
    if computer == user:
        print("平局")
        print(f"电脑分数:{computerMark},用户分数:{userMark}")
    elif (
        (user == 1 and computer == 3)
        or (user == 2 and computer == 1)
        or (user == 3 and computer == 2)
    ):
        print("你赢了")
        userMark += 10
        computerMark -= 10
        print(f"电脑分数:{computerMark},用户分数:{userMark}")
    else:
        print("你输了")
        userMark -= 10
        computerMark += 10
        print(f"电脑分数:{computerMark},用户分数:{userMark}")
while userMark == 0:
    print("游戏结束，你输了")
    break
while userMark == 200:
    print("你赢了，游戏结束")
    break


# 第三题:封装函数: 判断一个数组是对称数组?(函数说明文档也要写)
# 例如[1，2，0，2，1]，[1，2，3，3，2，1]，这样的数组都是对称数组。用Python 判断，是对称数组打印 True，不是打印 False。
# def set(arr):
#     """ 对称数组 """
#     return arr == arr[::-1]

# print(set([1, 2, 0, 2, 1]))


# 第四题:找出列表a=[“hello”，“world”，“yoyo”,“congratulations”]中单词最长的一个
# def list(words):
#     return max(words, key=len)
# print(list(["hello", "world", "yoyo", "congratulations"]))
